package com.huixuebao.exchange.entity;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

@Data
@TableName("hxb_insured_order")
public class InsuredEntity {

    @TableId(type = IdType.UUID)
    private String id;
    /***
     * 订单id
     */
    private String orderId;
    /***
     * 产品代码
     */
    private String productCode;
    /***
     * 出单类型 proposal: 核保 insure：出单 cancel：退保
     */
    private String insureType;
    /***
     * 投保（签单时间）时 间：yyyy­MM­dd HH:mm:ss
     */
    private Date applyTime;
    /***
     * 投保单号
     */
    private String policyId;
    /***
     * 投保份数（整数）
     */
    private Integer insureCount;
    /***
     * 总保费，无小数点，单位：分
     */
    private String totalPremium;
    /***
     * 总保额，无小数点，单位：分
     */
    private String totalAmount;
    /***
     * 起保日期（生效 日）：yyyy­MM­dd HH:mm:ss
     */
    private Date effectiveStartTime;
    /***
     * 终保日期：yyyy­ MM­dd HH:mm:ss
     */
    private Date effectiveEndTime;
    /***
     * 机构id
     */
    private String mechanismId;
    /***
     * 课程id
     */
    private String courseId;
    /***
     * 投保人与被保人的关系
     */
    private Integer insuredHolder;
    /***
     * 学员表Id
     */
    private String studentId;
    /***
     * 保费
     */
    //private BigDecimal premium;
    /***
     * 总保额
     */
    //private BigDecimal totalInsured;
    /***
     * 投保人职业
     */
    private String insuredProfession;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 订单状态
     */
    private Integer orderState;
    /**
     * 课程图片
     */
    private String courseName;
    /**
     * 课程图片URL
     */
    private String coursePhoto;
    /**
     * 被保人Id
     */
    private String insuredPersonId;
    /**
     * 投保人Id
     */
    private String holderPersonId;
    /**
     * 理赔状态(0:没有发起理赔，1：发起理赔，2：审核通过 3：理赔完成 4：已过期)
     * 已过期是：起保日期和，终保日期已经过了就是已过期
     */
    private Integer settleState;
    /**
     * 理赔价格
     */
    private BigDecimal settlePrice;
    /**
     * 保单下载地址
     */
    private String policyUrl;
    /**
     * 投保人类型：型(1­个 人；2­企业)，如果 是用户自行投保请传 1
     */
    private String holderType;
    /**
     * 01­本 人或者同投保人;02­ 配偶;03­子女;04­父 母;05­朋友
     */
    private String insuredRelation;
    /**
     * 理赔发起时间
     */
    private Date settleTime;
    /**
     * 驳回内容
     */
    private String rejectContent;
}
